誤差逆伝播と微積分 | Chapter 4 Deep Learning
https://youtu.be/WjAXZkQSE2U?si=lgTNrUKA4_MvwV9A
実際に変えられるのは重みとバイアスのみでアクティベーションは変えられないが、変化に対してどのようにコストが変化するかわかるのはうれしい
最後のニューロンのアクティベーションを$ a^{(L)}
その前の層のものを$ a^{(L-1)}
重みを $ w^{(L)}
コスト$ C_0は以下の式で求められる
$ C_0 = (a^{(L)}-y)^2
アクティベーション$ a^{(L)}は
$ a^{(L)} = \sigma(w^{(L)}a^{(L-1)}+b^{(L)})
重み付き和を$ z^{(L)}と表現することにすると $ z^{(L)} = w^{(L)}a^{(L-1)}+b^{(L)}
$ a^{(L)} = \sigma(z^{(L)})
アクティベーションは重み付き和を活性化関数にかけたものといえる?cak.icon 重みを変化させたときにコストがどう変化するか?は$ \frac{\partial C_0}{\partial w^{(L)}}と表すことができる
上記の式により、
$ \frac{\partial C_0}{\partial w^{(L)}} =\frac{\partial z^{(L)}}{\partial w^{(L)}}\frac{\partial a^{(L)}}{\partial z^{(L)}}\frac{\partial C_0}{\partial a^{(L)}}と表現できる
バイアスやアクティベーションに対する変化も$ \frac{\partial C_0}{\partial b^{(L)}}や$ \frac{\partial C_0}{\partial a^{(L)}}であらわせる
$ \frac{\partial C_0}{\partial w^{(L)}} =\frac{\partial z^{(L)}}{\partial w^{(L)}}\frac{\partial a^{(L)}}{\partial z^{(L)}}\frac{\partial C_0}{\partial a^{(L)}}
$ =a^{(L-1)} \sigma'(z^{(L)})2(a^{(L)}-y)